package com.hsurosy.domain.activity.service.trial;

import com.hsurosy.domain.activity.adapter.repository.IActivityRepository;
import com.hsurosy.types.design.framework.tree.AbstractMultiThreadStrategyRouter;
import com.hsurosy.types.design.framework.tree.AbstractStrategyRouter;

import javax.annotation.Resource;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeoutException;

/**
 * @Author Hsu琛君珩
 * @Date 2025-08-11 4:04
 * @Description 抽象拼团营销活动支持类
 * @Version: v1.0.0
 */
public abstract class AbstractGroupBuyMarketSupport<MarketProductEntity, DynamicContext, TrialBalanceEntity> extends AbstractMultiThreadStrategyRouter<MarketProductEntity, DynamicContext, TrialBalanceEntity> {

    protected long timeout = 500; // 超时时间参数

    @Resource
    protected IActivityRepository activityRepository;

    @Override
    protected void multiThread(MarketProductEntity requestParameter, DynamicContext dynamicContext) throws ExecutionException, InterruptedException, TimeoutException {
        // 缺省的方法，留给子类实现
    }

}
